Selective reduction of blue light in a display frame

ABSTRACT

In an embodiment, a user equipment (UE) coupled to a display screen enters into a reduced blue light (RBL) mode. The UE determines, while operating in accordance with the RBL mode, a degree of blue light reduction in at least a portion of a display frame to be output on the display screen using at least one RBL rule from a set of RBL rules that is based upon one or more of (i) application-specific information of an application that is contributing image data to the portion of the display frame, and (ii) content-specific information that characterizes the image data in the portion of the display frame. The UE selectively reduces the blue light in the at least a portion of the display frame based on the determining. The UE sends the display frame with the selectively reduced blue light portion to the display screen for output.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application for patent claims the benefit of U.S.Provisional Application No. 62/418,524 entitled “SELECTIVE REDUCTION OFBLUE LIGHT IN A DISPLAY FRAME”, filed Nov. 7, 2016, which is by the sameinventors as the subject application, assigned to the assignee hereofand hereby expressly incorporated by reference herein in its entirety.

BACKGROUND

1. Field of the Disclosure

Embodiments relate to selective reduction of blue light in a displayframe.

2. Description of the Related Art

Blue light can be emitted from natural sources (e.g., the Sun) as wellas by various electronic display screens (e.g., televisions, computermonitors, smart phones, tablet computers, etc.). During the day, bluelight may provide people with a number of beneficial effects (e.g.,boosting attention, reaction times and mood) caused in part bysuppression of melatonin. However, it is common for people to gaze uponblue light-emitting display screens at nighttime as well, wheremelatonin suppression can cause irregular sleep patterns (e.g.,insomnia, etc.).

Some electronic devices that emit blue light can be configured tooperate, at nighttime, in accordance with a reduced blue light (RBL)mode that reduces the amount of emitted blue light. This helps to reduceor eliminate blue light-induced melatonin suppression. However,manipulating display screens to reduce the amount of emitted blue lightcan result in display frames being output with an orange hue whichdecreases the color fidelity of the display screen.

SUMMARY

In an embodiment, a user equipment (UE) coupled to a display screenenters into a reduced blue light (RBL) mode. The UE determines, whileoperating in accordance with the RBL mode, a degree of blue lightreduction in at least a portion of a display frame to be output on thedisplay screen using at least one RBL rule from a set of RBL rules thatis based upon one or more of (i) application-specific information of anapplication that is contributing image data to the portion of thedisplay frame, and/or (ii) content-specific information thatcharacterizes the image data in the at least a portion of the displayframe. The UE selectively reduces the blue light in the portion of thedisplay frame based on the determining. The UE sends the display framewith the selectively reduced blue light portion to the display screenfor output.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of embodiments of the disclosure will bereadily obtained as the same becomes better understood by reference tothe following detailed description when considered in connection withthe accompanying drawings which are presented solely for illustrationand not limitation of the disclosure, and in which:

FIG. 1 illustrates a high-level system architecture of a wirelesscommunications system in accordance with an embodiment of thedisclosure.

FIG. 2 illustrates a user equipment (UE) in accordance with anembodiment of the disclosure.

FIG. 3 illustrates a communications device that includes structuralcomponents in accordance with an embodiment of the disclosure.

FIG. 4 illustrates a UE that has opened a reduced blue light (RBL)configuration screen.

FIG. 5 illustrates a process of implementing a dynamic orcontext-dependent RBL mode in accordance with an embodiment of thedisclosure.

FIG. 6A illustrates a UE that has opened an RBL configuration screen inaccordance with an embodiment of the disclosure.

FIG. 6B illustrates the UE of FIG. 6A after opening an advanced RBLconfiguration screen in accordance with an embodiment of the disclosure.

DETAILED DESCRIPTION

Aspects of the disclosure are disclosed in the following description andrelated drawings directed to specific embodiments of the disclosure.Alternate embodiments may be devised without departing from the scope ofthe disclosure. Additionally, well-known elements of the disclosure willnot be described in detail or will be omitted so as not to obscure therelevant details of the disclosure.

The words “exemplary” and/or “example” are used herein to mean “servingas an example, instance, or illustration.” Any embodiment describedherein as “exemplary” and/or “example” is not necessarily to beconstrued as preferred or advantageous over other embodiments. Likewise,the term “embodiments of the disclosure” does not require that allembodiments of the disclosure include the discussed feature, advantageor mode of operation.

Further, many embodiments are described in terms of sequences of actionsto be performed by, for example, elements of a computing device. It willbe recognized that various actions described herein can be performed byspecific circuits (e.g., application specific integrated circuits(ASICs)), by program instructions being executed by one or moreprocessors, or by a combination of both. Additionally, these sequence ofactions described herein can be considered to be embodied entirelywithin any form of computer-readable storage medium having storedtherein a corresponding set of computer instructions that upon executionwould cause an associated processor to perform the functionalitydescribed herein. Thus, the various aspects of the disclosure may beembodied in a number of different forms, all of which have beencontemplated to be within the scope of the claimed subject matter. Inaddition, for each of the embodiments described herein, thecorresponding form of any such embodiments may be described herein as,for example, “logic configured to” perform the described action.

A client device, referred to herein as a user equipment (UE), may bemobile or stationary, and may communicate with a wired access networkand/or a radio access network (RAN). As used herein, the term “UE” maybe referred to interchangeably as an “access terminal” or “AT”, a“wireless device”, a “subscriber device”, a “subscriber terminal”, a“subscriber station”, a “user terminal” or UT, a “mobile device”, a“mobile terminal”, a “mobile station” and variations thereof. In anembodiment, UEs can communicate with a core network via the RAN, andthrough the core network the UEs can be connected with external networkssuch as the Internet. Of course, other mechanisms of connecting to thecore network and/or the Internet are also possible for the UEs, such asover wired access networks, WiFi networks (e.g., based on IEEE 802.11,etc.) and so on. UEs can be embodied by any of a number of types ofdevices including but not limited to cellular telephones, personaldigital assistants (PDAs), pagers, laptop computers, desktop computers,PC cards, compact flash devices, external or internal modems, wirelessor wireline phones, and so on. A communication link through which UEscan send signals to the RAN is called an uplink channel (e.g., a reversetraffic channel, a reverse control channel, an access channel, etc.). Acommunication link through which the RAN can send signals to UEs iscalled a downlink or forward link channel (e.g., a paging channel, acontrol channel, a broadcast channel, a forward traffic channel, etc.).A communication link through which UEs can send signals to other UEs iscalled a peer-to-peer (P2P) or device-to-device (D2D) channel.

FIG. 1 illustrates a high-level system architecture of a wirelesscommunications system 100 in accordance with an embodiment of thedisclosure. The wireless communications system 100 contains UEs 1 . . .N. For example, in FIG. 1, UEs 1 . . . 2 are illustrated as cellularcalling phones, UEs 1 . . . 6 are illustrated as cellular touchscreenphones or smart phones, and UE N is illustrated as a desktop computer orPC.

Referring to FIG. 1, UEs 1 . . . N are configured to communicate with anaccess network (e.g., a RAN 120, an access point 125, etc.) over aphysical communications interface or layer, shown in FIG. 1 as airinterfaces 104, 106, 108 and/or a direct wired connection. The airinterfaces 104 and 106 can comply with a given cellular communicationsprotocol (e.g., CDMA, EVDO, eHRPD, GSM, EDGE, W-CDMA, 4G LTE, 5G LTE,etc.), while the air interface 108 can comply with a wireless IPprotocol (e.g., IEEE 802.11). The RAN 120 may include a plurality ofaccess points that serve UEs over air interfaces, such as the airinterfaces 104 and 106. The access points in the RAN 120 can be referredto as access nodes or ANs, access points or APs, base stations or BSs,Node Bs, eNode Bs, and so on. These access points can be terrestrialaccess points (or ground stations), or satellite access points. The RAN120 may be configured to connect to a core network 140 that can performa variety of functions, including bridging circuit switched (CS) callsbetween UEs served by the RAN 120 and other UEs served by the RAN 120 ora different RAN altogether, and can also mediate an exchange ofpacket-switched (PS) data with external networks such as Internet 175.

The Internet 175, in some examples includes a number of routing agentsand processing agents (not shown in FIG. 1 for the sake of convenience).In FIG. 1, UE N is shown as connecting to the Internet 175 directly(i.e., separate from the core network 140, such as over an Ethernetconnection of WiFi or 802.11-based network). The Internet 175 canthereby function to bridge packet-switched data communications betweenUEs 1 . . . N via the core network 140. Also shown in FIG. 1 is theaccess point 125 that is separate from the RAN 120. The access point 125may be connected to the Internet 175 independent of the core network 140(e.g., via an optical communications system such as FiOS, a cable modem,etc.). The air interface 108 may serve UE 5 or UE 6 over a localwireless connection, such as IEEE 802.11 in an example. UE N is shown asa desktop computer with a wired connection to the Internet 175, such asa direct connection to a modem or router, which can correspond to theaccess point 125 itself in an example (e.g., for a WiFi router with bothwired and wireless connectivity).

Referring to FIG. 1, a server 170 is shown as connected to the Internet175, the core network 140, or both. The server 170 can be implemented asa plurality of structurally separate servers, or alternately maycorrespond to a single server. The server 170 may correspond to any typeof server, such as a web server (e.g., hosting a web page), anapplication download server, or an application server that supportsparticular communicative service(s), such as Voice-over-InternetProtocol (VoIP) sessions, Push-to-Talk (PTT) sessions, groupcommunication sessions, a social networking service, etc.

Referring to FIG. 1, UEs 1 . . . 3 are depicted as part of a D2D networkor D2D group 185, with UEs 1 and 3 being connected to the RAN 120 viathe air interface 104. In an embodiment, UE 2 may also gain indirectaccess to the RAN 120 via mediation by UEs 1 and/or 3, whereby data‘hops’ to/from UE 2 and one (or more) of UEs 1 and 3, which communicatewith the RAN 120 on behalf of UE 2.

FIG. 2 illustrates a UE 200 in accordance with an embodiment of thedisclosure. The UE 200 includes one or more processors 205 (e.g., one ormore ASICs, one or more digital signal processors (DSPs), etc.) and amemory 210 (e.g., RAM, ROM, EEPROM, flash cards, or any memory common tocomputer platforms). The memory 210 includes a plurality of applications1 . . . N that are executable by the one or more processors 205 via anassociated operating system. The UE 200 also includes one or more UIinput components 215 (e.g., a keyboard and mouse, a touchscreen, amicrophone, one or more buttons such as volume or power buttons, etc.)and one or more UI output components 220 (e.g., speakers, a displayscreen, a vibration device for vibrating the UE 200, etc.).

The UE 200 further includes a wired communications interface 225 and awireless communications interface 230. In an example embodiment, thewired communications interface 225 can be used to support wired localconnections to peripheral devices (e.g., a USB connection, a mini USB,Firewire or lightning connection, a headphone jack, graphics ports suchas serial, VGA, HDMI, DVI or DisplayPort, audio ports, and so on) and/orto a wired access network (e.g., via an Ethernet cable or another typeof cable that can function as a bridge to the wired access network suchas HDMI v1.4 or higher, etc.). In another example embodiment, thewireless communications interface 230 includes one or more wirelesstransceivers for communication in accordance with a local wirelesscommunications protocol (e.g., WLAN or WiFi, WiFi Direct, Bluetooth,LTE-D, Miracast, etc.). The wireless communications interface 230 mayalso include one or more wireless transceivers for communication with acellular RAN (e.g., via CDMA, W-CDMA, time division multiple access(TDMA), frequency division multiple access (FDMA), Orthogonal FrequencyDivision Multiplexing (OFDM), GSM, or other protocols that may be usedin a wireless communications network or a data communications network).The various components 205-230 of the UE 200 can communicate with eachother via a bus 235.

Referring to FIG. 2, the UE 200 may correspond to any type of UE,including but not limited to a smart phone, a laptop computer, a desktopcomputer, a tablet computer, a wearable device (e.g., a pedometer, asmart watch, etc.) and so on. Two particular implementation examples ofthe UE 200 are depicted in FIG. 2, which are illustrated as a laptop 240and a touchscreen device 255 (e.g., a smart phone, a tablet computer,etc.). The laptop 240 includes a display screen 245 and a UI area 250(e.g., keyboard, touchpad, power button, etc.), and while not shown thelaptop 240 may include various ports as well as wired and/or wirelesstransceivers (e.g., Ethernet card, WiFi card, broadband card, satelliteposition system (SPS) antennas such as global positioning system (GPS)antennas, etc.).

The touchscreen device 255 is configured with a touchscreen display 260,peripheral buttons 265, 270, 275 and 280 (e.g., a power button, a volumeor vibrate control button, an airplane mode toggle button, etc.), and atleast one front-panel button 285 (e.g., a Home button, etc.), amongother components, as is known in the art. While not shown explicitly aspart of the touchscreen device 255, the touchscreen device 255 caninclude one or more external antennas and/or one or more integratedantennas that are built into the external casing of the touchscreendevice 255, including but not limited to WiFi antennas, cellularantennas, SPS antennas (e.g., GPS antennas), and so on.

FIG. 3 illustrates a communications device 300 that includes structuralcomponents in accordance with an embodiment of the disclosure. Thecommunications device 300 can correspond to any of the above-notedcommunications devices, including but not limited to UE 200.

Referring to FIG. 3, the communications device 300 includes transceivercircuitry configured to receive and/or transmit information 305. In anexample, if the communications device 300 corresponds to a wirelesscommunications device (e.g., UE 200), the transceiver circuitryconfigured to receive and/or transmit information 305 can include awireless communications interface (e.g., Bluetooth, WiFi, WiFi Direct,LTE-Direct, etc.) such as a wireless transceiver and associated hardware(e.g., an RF antenna, a MODEM, a modulator and/or demodulator, etc.). Inanother example, the transceiver circuitry configured to receive and/ortransmit information 305 can correspond to a wired communicationsinterface (e.g., a serial connection, a USB, Firewire or lightningconnection, an Ethernet connection through which the Internet 175 can beaccessed, etc.). In a further example, the transceiver circuitryconfigured to receive and/or transmit information 305 can includesensory or measurement hardware by which the communications device 300can monitor its local environment (e.g., an accelerometer, a temperaturesensor, a light sensor, an antenna for monitoring local RF signals,etc.). The transceiver circuitry configured to receive and/or transmitinformation 305 can also include software that, when executed, permitsthe associated hardware of the transceiver circuitry configured toreceive and/or transmit information 305 to perform its reception and/ortransmission function(s). However, the transceiver circuitry configuredto receive and/or transmit information 305 does not correspond tosoftware alone, and the transceiver circuitry configured to receiveand/or transmit information 305 relies at least in part upon structuralhardware to achieve its functionality. Moreover, the transceivercircuitry configured to receive and/or transmit information 305 may beimplicated by language other than “receive” and “transmit”, so long asthe underlying function corresponds to a receive or transmit function.For example, functions such as obtaining, acquiring, retrieving,measuring, etc., may be performed by the transceiver circuitryconfigured to receive and/or transmit information 305 in certaincontexts as being specific types of receive functions. In anotherexample, functions such as sending, delivering, conveying, forwarding,etc., may be performed by the transceiver circuitry configured toreceive and/or transmit information 305 in certain contexts as beingspecific types of transmit functions. Other functions that correspond toother types of receive and/or transmit functions may also be performedby the transceiver circuitry configured to receive and/or transmitinformation 305.

Referring to FIG. 3, the communications device 300 further includes atleast one processor configured to process information 310. Exampleimplementations of the type of processing that can be performed by theat least one processor configured to process information 310 includesbut is not limited to performing determinations, establishingconnections, making selections between different information options,performing evaluations related to data, interacting with sensors coupledto the communications device 300 to perform measurement operations,converting information from one format to another (e.g., betweendifferent protocols such as .wmv to .avi, etc.), and so on. For example,the at least one processor configured to process information 310 caninclude a general purpose processor, a DSP, an ASIC, a fieldprogrammable gate array (FPGA) or other programmable logic device,discrete gate or transistor logic, discrete hardware components, or anycombination thereof designed to perform the functions described herein.A general purpose processor may be a microprocessor, but in thealternative, the at least one processor configured to processinformation 310 may be any conventional processor, controller,microcontroller, or state machine. A processor may also be implementedas a combination of computing devices (e.g., a combination of a DSP anda microprocessor, a plurality of microprocessors, one or moremicroprocessors in conjunction with a DSP core, or any other suchconfiguration). The at least one processor configured to processinformation 310 can also include software that, when executed, permitsthe associated hardware of the at least one processor configured toprocess information 310 to perform its processing function(s). However,the at least one processor configured to process information 310 doesnot correspond to software alone, and the at least one processorconfigured to process information 310 relies at least in part uponstructural hardware to achieve its functionality. Moreover, the at leastone processor configured to process information 310 may be implicated bylanguage other than “processing”, so long as the underlying functioncorresponds to a processing function. For example, functions such asevaluating, determining, calculating, identifying, etc., may beperformed by the at least one processor configured to processinformation 310 in certain contexts as being specific types ofprocessing functions. Other functions that correspond to other types ofprocessing functions may also be performed by the at least one processorconfigured to process information 310.

Referring to FIG. 3, the communications device 300 further includesmemory configured to store information 315. In an example, the memoryconfigured to store information 315 can include at least anon-transitory memory and associated hardware (e.g., a memorycontroller, etc.). For example, the non-transitory memory included inthe memory configured to store information 315 can correspond to RAM,flash memory, ROM, erasable programmable ROM (EPROM), EEPROM, registers,hard disk, a removable disk, a CD-ROM, or any other form of storagemedium known in the art. The memory configured to store information 315can also include software that, when executed, permits the associatedhardware of the memory configured to store information 315 to performits storage function(s). However, the memory configured to storeinformation 315 does not correspond to software alone, and the memoryconfigured to store information 315 relies at least in part uponstructural hardware to achieve its functionality. Moreover, the memoryconfigured to store information 315 may be implicated by language otherthan “storing”, so long as the underlying function corresponds to astoring function. For example, functions such as caching, maintaining,etc., may be performed by the memory configured to store information 315in certain contexts as being specific types of storing functions. Otherfunctions that correspond to other types of storing functions may alsobe performed by the memory configured to store information 315.

Referring to FIG. 3, the communications device 300 further includes userinterface output circuitry configured to present information 320. In anexample, the user interface output circuitry configured to presentinformation 320 can include at least an output device and associatedhardware. For example, the output device can include a video outputdevice (e.g., a display screen, a port that can carry video informationsuch as USB, HDMI, etc.), an audio output device (e.g., speakers, a portthat can carry audio information such as a microphone jack, USB, HDMI,etc.), a vibration device and/or any other device by which informationcan be formatted for output or actually outputted by a user or operatorof the communications device 300. For example, if the communicationsdevice 300 corresponds to the UE 200 as shown in FIG. 2, the userinterface output circuitry configured to present information 320 caninclude a display such as display screen 245 or touchscreen display 260.The user interface output circuitry configured to present information320 can also include software that, when executed, permits theassociated hardware of the user interface output circuitry configured topresent information 320 to perform its presentation function(s).However, the user interface output circuitry configured to presentinformation 320 does not correspond to software alone, and the userinterface output circuitry configured to present information 320 reliesat least in part upon structural hardware to achieve its functionality.Moreover, the user interface output circuitry configured to presentinformation 320 may be implicated by language other than “presenting”,so long as the underlying function corresponds to a presenting function.For example, functions such as displaying, outputting, prompting,conveying, etc., may be performed by the user interface output circuitryconfigured to present information 320 in certain contexts as beingspecific types of presenting functions. Other functions that correspondto other types of presenting functions may also be performed by the userinterface output circuitry configured to present information 320.

Referring to FIG. 3, the communications device 300 further includes userinterface input circuitry configured to receive local user input 325. Inan example, the user interface input circuitry configured to receivelocal user input 325 can include at least a user input device andassociated hardware. For example, the user input device can includebuttons, a touchscreen display, a keyboard, a camera, an audio inputdevice (e.g., a microphone or a port that can carry audio informationsuch as a microphone jack, etc.), and/or any other device by whichinformation can be received from a user or operator of thecommunications device 300. For example, if the communications device 300corresponds to UE 200 as shown in FIG. 2, the user interface inputcircuitry configured to receive local user input 325 may correspond toUI area 250 or touchscreen display 260, etc. The user interface inputcircuitry configured to receive local user input 325 can also includesoftware that, when executed, permits the associated hardware of theuser interface input circuitry configured to receive local user input325 to perform its input reception function(s). However, the userinterface input circuitry configured to receive local user input 325does not correspond to software alone, and the user interface inputcircuitry configured to receive local user input 325 relies at least inpart upon structural hardware to achieve its functionality. Moreover,the user interface input circuitry configured to receive local userinput 325 may be implicated by language other than “receiving local userinput”, so long as the underlying function corresponds to a receivinglocal user input function. For example, functions such as obtaining,receiving, collecting, etc., may be performed by the user interfaceinput circuitry configured to receive local user input 325 in certaincontexts as being specific types of receiving local user functions.Other functions that correspond to other types of receiving local userinput functions may also be performed by the user interface inputcircuitry configured to receive local user input 325.

Referring to FIG. 3, while the configured structural components of 305through 325 are shown as separate or distinct blocks in FIG. 3 that areimplicitly coupled to each other via an associated communication bus(not shown expressly), it will be appreciated that the hardware and/orsoftware by which the respective configured structural components of 305through 325 perform their respective functionality can overlap in part.For example, any software used to facilitate the functionality of theconfigured structural components of 305 through 325 can be stored in thenon-transitory memory associated with the memory configured to storeinformation 315, such that the configured structural components of 305through 325 each perform their respective functionality (i.e., in thiscase, software execution) based in part upon the operation of softwarestored by the memory configured to store information 315. Likewise,hardware that is directly associated with one of the configuredstructural components of 305 through 325 can be borrowed or used byother of the configured structural components of 305 through 325 fromtime to time. For example, the at least one processor configured toprocess information 310 can format data into an appropriate formatbefore being transmitted by the transceiver circuitry configured toreceive and/or transmit information 305, such that the transceivercircuitry configured to receive and/or transmit information 305 performsits functionality (i.e., in this case, transmission of data) based inpart upon the operation of structural hardware associated with the atleast one processor configured to process information 310.

Blue light can be emitted from natural sources (e.g., the Sun) as wellas by various electronic display screens (e.g., televisions, computermonitors, smart phones, tablet computers, etc.). During the day, bluelight may provide people with a number of beneficial effects (e.g.,boosting attention, reaction times and mood) caused in part bysuppression of melatonin. However, it is common for people to gaze uponblue light-emitting display screens at nighttime as well, wheremelatonin suppression can cause irregular sleep patterns (e.g.,insomnia, etc.).

Some electronic devices that emit blue light can be configured tooperate, at nighttime, in accordance with a reduced blue light (RBL)mode that reduces the amount of emitted blue light, as depicted in FIG.4. FIG. 4 illustrates a UE 400 (e.g., a smartphone) that has opened anRBL configuration screen 405 (e.g., a Night Shift configuration screenin iOS v.10). The RBL configuration screen 405 includes a scheduled RBLmode toggle switch 410 that enforces a customizable RBL time schedule415, a manual RBL mode toggle switch 420 and a color temperature slider425. If the scheduled RBL mode toggle switch 410 is set to on (to Y),then the customizable RBL time schedule 415 becomes available for theuser to define the time period where the UE 400 is to automaticallyenter into the RBL mode. If the manual RBL mode toggle switch 420 isturned on (or set to Y), then the user is manually instructing UE 400 toenter into the RBL mode (e.g., until some default endpoint, such as 7 AMthe next day). The color temperature slider 425 is set to some defaultlevel, but can also be manipulated by the user to establish a desiredlevel of blue light suppression during the RBL mode (either manual orscheduled). For example, the user can slide the color temperature slider425 to the left to produce a cooler color temperature with more bluelight during the RBL mode, or to the right to produce a warmer colortemperature with less blue light during the RBL mode. For examplepurposes, the scheduled RBL mode toggle switch 410 is set to on (or Y)while the manual RBL mode toggle switch 420 is set to off (or N). Inother scenarios, both the scheduled RBL mode toggle switch 410 and themanual RBL mode toggle switch 420 may both be turned on (e.g., in whichcase the RBL mode turns on in accordance with the customizable RBL timeschedule 415 as well as any manually-requested times) or off (e.g., inwhich case RBL is effectively disabled).

When the RBL mode described with respect to FIG. 4 is activated, bluelight suppression to a degree specified by the color temperature slider425 is applied to each display frame that is output by a respectivedisplay screen of the UE 400, which can reduce or eliminate bluelight-induced melatonin suppression. However, the blue light suppressionin FIG. 4 is applied indiscriminately to all visual artifacts in thedisplay screen, without factoring what application(s) are currentlybeing used and/or any content-specific information characterizingcontent being displayed, resulting in an orange hue which decreases thecolor fidelity of all image data output by the display screen.

Users may desire higher levels of color fidelity for particularapplications (e.g., camera mode or viewfinder mode, YouTube, a comicbook reading application, etc.) and/or for particular pieces of contentunder display (e.g., pictures, videos, etc.), while users may not valuecolor fidelity for other applications (e.g., an e-book application suchas Kindle, etc.) and/or other pieces of content under display (e.g.,textual data, a chat window in a messenger application, interfaceelements or background data, etc.). Accordingly, embodiments of thedisclosure are directed to a set of RBL rules for implementing bluelight reductive effects of RBL mode in a selective or dynamic mannerthat is context-dependent.

FIG. 5 illustrates a process of implementing a dynamic orcontext-dependent RBL mode in accordance with an embodiment of thedisclosure. The process of FIG. 5 is performed at a UE that is coupledto a display screen (e.g., an integrated display screen as in asmartphone, tablet computer or laptop computer, an external displayscreen as used in most desktop computers and certain laptop computerconfigurations, etc.). While described as a single display screen forthe sake of convenience, the display screen could also be implemented ina multi-screen configuration in other embodiments.

Referring to FIG. 5, at block 500, the UE enters into a reduced bluelight (RBL) mode. At block 505, while operating in accordance with theRBL mode, the UE determines a degree of blue light reduction in at leasta portion of a display frame to be output on the display screen using atleast one RBL rule from the set of RBL rules that is based upon one ormore of (i) application-specific information of an application that iscontributing image data to the portion of the display frame, and (ii)content-specific information that characterizes the image data in theportion of the display frame. As will be explained below, theapplication-specific information may include any informationcharacterizing the application itself (e.g., a particular type orclassification of application, such as a web browsing application, asocial media application, etc., which may be determined independentlyfrom the content being rendered in the display frame, e.g., by anoperating system based on an application identifier for theapplication), while the content-specific information may include anyinformation characterizing the particular content being rendered in thedisplay frame (e.g., based on an analysis of particular groupings ofpixel colors in the display frame). In other words, blue light reductionis not applied indiscriminately as discussed above with respect to FIG.4, but is instead implemented in a context-dependent manner Various RBLrules that may be implemented in association with block 505 arediscussed below in more detail.

Referring to FIG. 5, at block 510, the UE selectively reduces the bluelight in the at least a portion of the display frame based on thedetermination of block 505. In certain instances, the blue light in theportion of the display frame is not actually reduced (e.g., the degreeof blue light reduction determined at block 505 is zero), hence theselective nature of block 510. Further, a reduction to the blue light inthe portion of the display frame may or may not be associated with areduction in the overall brightness (e.g., light intensity based ontotal output in lumens) of the display frame. In other words, blue lightreduction generally corresponds to a color tone shift (or gamma shift)that does not strictly require a reduction to brightness, although someembodiments relate to reducing overall brightness to some degree inassociation with RBL mode. Accordingly, a brightness level reduction isan optional function that may (or may not) be implemented in conjunctionwith blue light reduction at block 510. In an example, the degree ofbrightness reduction may be controlled separately from the blue lightreduction, although it is possible that a brightness control interfacecould be integrated with a blue light reduction interface (e.g., so theuser can configure how much brightness is to be reduced during RBL mode,etc.). Below, any references that are specific to blue light reductiongenerally refers to blue light reduction in context with a color toneshift, not a mere brightness reduction configured to reduce overalldisplay screen brightness in a manner that is indiscriminate to colortone. At block 515, the UE sends the display frame with the selectivelyreduced blue light portion to the display screen for output.

FIG. 6A illustrates a UE 600 (e.g., a smartphone or tablet computer)that has opened an RBL configuration screen 605 in accordance with anembodiment of the disclosure. The RBL configuration screen 605 includesa scheduled RBL mode toggle switch 610 that enforces a customizable RBLtime schedule 615, a manual RBL mode toggle switch 620 and a defaultcolor temperature slider 625. If the scheduled RBL mode toggle switch610 is set to on (to Y), then the customizable RBL time schedule 615becomes available for the user to define the time period where the UE600 is to automatically enter into the RBL mode. If the manual RBL modetoggle switch 620 is turned on (or set to Y), then the user is manuallyinstructing UE 600 to enter into the RBL mode (e.g., until some defaultendpoint, such as 7 AM the next day).

In FIG. 4, the color temperature slider 425 is used to establish thedegree of blue light reduction that is implemented whenever the RBL modeis in effect. However, in FIG. 6A, the default color temperature slider625 establishes a baseline (or default level) of RBL that can beoverridden by one or more RBL rules in a selective manner. The RBLconfiguration screen 605 further includes an advanced RBL settings bar630 that can be clicked upon or pressed by the user to navigate into aseparate advanced RBL configuration screen, as described below withrespect to FIG. 6B.

FIG. 6B illustrates UE 600 after UE 600 opens an advanced RBLconfiguration screen 605B in accordance with an embodiment of thedisclosure. In an example, the advanced RBL configuration screen 605Bmay be loaded after the user clicks or presses the advanced RBL settingsbar 630 discussed above with respect to FIG. 6A. In an alternativeexample, the advanced RBL configuration screen 605B can be omittedaltogether for RBL modes that use strictly system-defined colortemperature settings without granting the user customization or overridecapability.

Referring to FIG. 6B, a number of RBL configuration options arepresented within the advanced RBL configuration screen 605B. The user ofthe UE 600 can modify the various RBL configuration options depicted inFIG. 6B, which can then be implemented as context-dependent RBL ruleswhen UE 600 is operating in the RBL mode. The particular RBLconfiguration options depicted in FIG. 6B are shown for example purposesonly, as there are many other potential RBL configuration options. Also,some RBL rules may be automatic (i.e., no user adjustment or fine-tuningpermitted), in which case the automatic RBL rules may be hidden from theuser or shown in a greyed-out manner that does not permit usermodification. In FIG. 6B, when a user activates a particular RBLconfiguration option (e.g., by setting an associated toggle switch to aturned on state or Y), an option-specific color temperature slider ispresented to the user (e.g., set initially to a default option-specificsetting that may be the same as the default color temperature slider 625of FIG. 6A or different) which the user can then slide to a desiredsetting for that particular RLB configuration option. Certain RBLconfiguration options are shown as turned on while others are turned offin the advanced RBL configuration screen 605B for example purposes only.

Referring to FIG. 6B, a toggle switch 610B for a “Pictures” RBLconfiguration option is shown in a turned-on (or activated) state. Acolor temperature slider 615B to be used specifically for contentclassifiable as “Pictures” (e.g., as opposed to interface elements suchas window colors, text color, thumbnail icons, etc.) is therebyprovided, which is set to a cooler setting than the default colortemperature slider 625. Accordingly, toggle switch 610B and colortemperature slider 615B together define an RBL rule whereby, during RBLmode, a display frame will be analyzed to detect any image data that isclassifiable as a “Picture” (e.g., based on an analysis of pixel colorgroupings in the display frame, based on OS-level or application-layerinformation that defines a particular object in the display frame asbeing a picture, etc.), whereby the color temperature indicated by thecolor temperature slider 615B is used in place of the default colortemperature for Picture-classified content (e.g., pictures beingpresented to the user in full-screen mode from a media gallery, picturesembedded in web-sites, etc.). As will be described below in more detail,the definition of what constitutes Picture-classified content (e.g.,full-screen pictures only, only pictures that occupy a threshold amountof screen space such that thumbnail icons would not qualify, etc.) mayvary by implementation or may be user-configurable. Also, variousexceptions for enhancing the user experience may be implemented tooverride particular RBL rules (e.g., do not transition into an ultra-lowblue light environment too quickly so as not to overwhelm the user,check a resulting contrast that would occur if RBL rule is executed andmodify blue light reduction if contrast is above a threshold, etc.).

Referring to FIG. 6B, a toggle switch 620B for a “Videos” RBLconfiguration option is shown in a turned-off (or inactivated) state. Asnoted above, a color temperature slider for content classifiable as“Videos” may be presented as part of the advanced RBL configurationscreen 605B if the user switches the toggle switch 620B to the activestate. If activated, the toggle switch 610B can be used to define an RBLrule whereby, during RBL mode, a display frame will be analyzed todetect any image data that is classifiable as a “Video” (e.g., based onan analysis of pixel color groupings in the display frame, based onOS-level or application-layer information that defines a particularobject in the display frame as being a video, etc.), whereby the colortemperature indicated by the color temperature slider (e.g., a colortemperature that is cooler relative to the setting specified by thedefault color temperature slider 625) for videos (not shown in FIG. 6B)is used in place of the default color temperature for Video-classifiedcontent. The definition of what constitutes Video-classified content(e.g., full-screen videos only, only videos that occupy a thresholdamount of screen space such that thumbnail icons would not qualify, novideo advertisements, etc.) may vary by implementation or may beuser-configurable. In the example depicted in FIG. 6B, the toggle switch620B is turned off, so the warmer default color temperature is used forvideo content in the RBL mode.

Referring to FIG. 6B, while toggle switches 610B and 620B show howparticular content types can be configured with custom color temperaturesettings, custom color temperature settings can also be implementedbased on other criteria, such as application-specific information (e.g.,application type or classification, etc.). Accordingly, a toggle switch625B for a “YouTube” RBL configuration option is shown in a turned-on(or activated) state. A color temperature slider 630B to be usedspecifically to be used whenever YouTube is executing in the foregroundof UE 600 (e.g., to the entire display frame, to the screen area used byYouTube if YouTube is not operating in full-screen mode, to the screenarea used for video content by YouTube without factoring otherextraneous YouTube interface elements, etc.) is set to a cooler settingthan the default color temperature slider 625. Accordingly, toggleswitch 625B and color temperature slider 630B together define an RBLrule whereby, during RBL mode, UE 600 checks whether YouTube isexecuting in the foreground (e.g., because if YouTube is executing inthe background but is not actually being displayed on-screen then thecustom YouTube RBL configuration would not be relevant), and if so, thecooler color temperature indicated by the color temperature slider 630Bis used in place of the warmer default color temperature (e.g., for atleast a portion of the display frame as noted above).

Referring to FIG. 6B, a toggle switch 635B for a “Web Browser” RBLconfiguration option is shown in a turned-off (or inactivated) state. Asnoted above, a color temperature slider for the “Web Browser”application-type may be presented as part of the advanced RBLconfiguration screen 605B if the user switches the toggle switch 635B tothe active state. If activated, the toggle switch 635B can be used todefine an RBL rule whereby, during RBL mode, implements a custom colortemperature specifically to be used whenever the web browser isexecuting in the foreground of UE 600. In the example depicted in FIG.6B, the toggle switch 635B is turned off, so the default colortemperature is used for the web browser in RBL mode.

Referring to FIG. 6B, a toggle switch 640B and color temperature slider645B are depicted for another application type, i.e., a chatapplication. The toggle switch 640B and color temperature slider 645Bare similar to the toggle switch 625B and color temperature slider 630Bdescribed above, except that the toggle switch 640B and colortemperature slider 645B together define an RBL rule for a differentapplication-type (i.e., a chat application instead of YouTube). In anexample, because chat applications generally present textual contentwhere blue light is not critical to the user experience, the user mayset the color temperature for the chat application to a high-warmthsetting (e.g., or a blue light reduction setting that reduces blue lighteven more than the relatively warm default color temperature) asdepicted in FIG. 6B. However, chat applications can sometimes embedhigher-priority content, such as pictures and videos that are sentinline with the text of a chat conversation. In this case, a rulehierarchy may be evaluated to determine how to treat the embeddedpicture content (e.g., Picture toggle switch is turned on, so apply thecooler Picture color temperature indicated by color temperature slider615B to any chat-embedded picture content instead of the high-warmthcolor temperature indicated by the color temperature slider 645B). Itwill be appreciated that there are many potential rule hierarchiesgoverning inter-rule interactions that may be implemented.

Referring to FIG. 6B, in addition to content-type (e.g., picture, video,text, etc.), other forms of content-specific information can beconsidered in association with RBL configuration options (or RBL rules).In particular, any content-specific information that indicates aparticular priority or prominence for particular portions of content canbe evaluated, with higher-priority content and/or higher-prominencecontent being permitted to output higher levels of blue light. Oneexample of content-specific information that may designate particularportions of content as being high-priority is memory colors. A memorycolor refers to a particular contextual object in a picture or video forwhich users expect a high color fidelity (or a high degree of accuracyrelative to how the object would appear in real-life). Examples ofmemory colors include colors that represent contextual objects such asthe sky, foliage or skin. Decreasing blue light in memory color objectswithin a picture or video may impact the user experience to a higherdegree than other content due to the high color fidelity expectation. Inaddition to simply allocating higher priority to pixel groupings thatcontain memory colors, the presence of memory colors may also help toclassify the content type of a particular pixel grouping (e.g., a largestatic pixel grouping comprising a high proportion of memory colors canbe classified as a picture, a large dynamic or changing pixel groupingcomprising high proportions of memory colors over time across differentdisplay frames can be classified as a video, etc.).

In FIG. 6B, a toggle switch 650B is depicted for memory colors. Whenturned on, UE 600 will search for any memory colors in any pictures orvideos depicted in display frames being rendered for display on thedisplay screen coupled to the UE. When the toggle switch 650B is turnedon, an RBL rule is implemented whereby UE 600 searches for memory colors(or put more precisely, for objects in a picture or video that arerecognized as memory color objects using computer vision or objectrecognition software, or alternatively via recognition of particularcolor tones that have a predetermined association with specific objectsat a high confidence level such that identification of the particularcolor tones can be interpreted as a detection of the correspondingassociated objects, such as particular skin color tones that are nottypically used in non-skin objects, etc.) in display frames beingrendered for output by the display screen, and a custom (e.g., cooler)color temperature is applied to any detected memory colors. In theexample depicted in FIG. 6B, the toggle switch 650B is turned off, sothe default color temperature is used for memory colors in RBL mode. Inan example, when the toggle switch 650B is turned off, UE 600 need notscan the display frames for memory colors at all.

While FIG. 6B illustrates a few non-limiting examples ofuser-customizable RBL configuration options, as noted above, other RBLconfiguration options may simply be preset or system-defined featureswhich are built into the RBL mode functionality. In this case, theadvanced RBL configuration screen 605B can be omitted altogether (e.g.,hidden from the user) or accessible to the user in a read-only capacitywhere the user is not permitted to make any changes or customization.Likewise, there are myriad ways in which RBL configuration options (orRBL rules) can be configured to interact with each other as noted above(e.g., via an RBL rule hierarchy, etc.). A number of specific RBL ruleswill now be described in more detail.

RBL Rule Examples

In a first RBL rule example, a color temperature (or tuning) during RBLmode is set to an intermediate level (e.g., between the warmer defaultcolor temperature for RBL mode which is set via the default colortemperature slider 625 and a cooler color temperature used when RBL modeis not active) when certain pre-defined application types are loaded.For example, if the device is in the RBL mode, and the user opens adevice camera or gallery, the color temperature is set to theintermediate level that is customized for device camera or galleryapplication types. In an example, the intermediate level may besystem-defined or user-defined (e.g., via a configuration utility suchas the advanced RBL configuration screen 605B as shown in FIG. 6B).

In an example, the intermediate level may be used (as opposed to simplyusing temporarily turning off the RBL mode when the user is engaged withthe pre-defined application types and using the standard or non-RBLdisplay tuning) because, by activating the RBL mode, UE 600 may inferthat the user is interested in reducing the sleep-inhibiting effects ofblue light (even when images are being viewed). The human visual systemhas an ability to adapt to the colors being viewed in order to maintaina sense of color constancy. For example, an apple may look redregardless of the color temperature of the light source it is viewedunder. However, if color temperatures change rapidly, as could occurwhen loading a new application, the standard (or non-RBL) display tuningcould appear unnaturally blue due to an aftereffect of the user'sadaptation (or acclimation) to the yellow light of RBL mode. Hence, theintermediate level that is engaged when particular application-types areloaded (e.g., a media gallery application, a camera mode or viewfindermode, etc.) may help to avoid overwhelming the user with blue light.

In a second RBL rule example, historical data that provides context interms of the user's expected acclimation to a low or high blue lightenvironment can be factored into the color temperature used for the RBLmode. The historical data can be used in conjunction with one or moreother RBL rules. For example, RBL rule #1 can specify that blue lightshould be reduced by 80% when the user opens a media galleryapplication-type. However, RBL rule #2 (e.g., an historical data-basedRBL rule) may specify that historical data is indicative that the useris only capable of currently handling a 40% blue light reduction. Inthis case, RBL rule #1 and RBL rule #2 may be implemented in conjunctionwhen the user opens the media gallery application, such that the bluelight is set to an initial 40% blue light reduction (i.e., anintermediate level set based on RBL rule #2), which then graduallytransitions the blue light reduction to the warmer target level of 80%based on RBL rule #1 (e.g., over a period of time such as seconds orminutes, over a particular number of display frames, etc.).

In an example, multiple RBL rules may coordinate by using one or moreRBL rules as a “primary” RBL rule to calculate a target degree of RBLreduction, with one or more “secondary” RBL rules functioning to offsetor modify the calculated target degree of RBL reduction in some mannerand/or to control a manner in which the calculated target degree of RBLreduction is implemented. Secondary RBL rules that operate in thismanner may alternatively be referred to herein as “contextual weightingfactors” because they weight the calculated target degree of RBLreduction in some manner. In the example above, RBL rule #2 that capsthe initial blue light reduction to 40% (instead of transitioningdirectly to 80%) can thereby be considered a contextual weighting factorto RBL rule #1. Accordingly, whether or not an RBL rule is acting as acontextual weighting factor is situational, as a particular RBL rule mayfunction as a primary RBL rule in some situations (e.g., for directlycalculating the target degree of blue light reduction), while that sameRBL rule may function as a secondary RBL rule or contextual weightingfactor in other situations (e.g., for weighting the target degree ofblue light reduction calculated by another primary RBL rule).

The historical data may include user-specific historical data and/ordisplay screen-specific historical data. For example, user-specifichistorical data may indicate whether the user is particularly sensitiveor particularly immune to sudden blue light changes based on userfeedback (e.g., passive user-monitoring based feedback of express userfeedback) from previously entries of UE 600 into the RBL mode. Forexample, if a previous blue light during RBL mode resulted in the usermanually throttling back the degree of blue light change, the user maybe inferred as sensitive to blue light changes which can be factoredinto the historical data-based RBL rule. In another example, the displayscreen-specific historical data may include information such as aduration of time that UE 600 has been operating in RBL mode (e.g., 15seconds, etc.). For example, if a user has been looking at the displayscreen in RBL mode for 15 seconds before opening the media galleryapplication, an initial blue light reduction of 10% might be used sincethe user has not had much time to acclimate to RBL mode. However, if UE600 has been in RBL mode for 15 minutes, then the initial blue lightreduction can be set to a higher (or warmer) level (e.g., 20%) when theuser opens the media gallery application. In either case, in an example,the initial blue light reduction can be transitioned to a differenttarget level of blue light reduction (e.g., set by some other RBL rule)over time, with the historical data acting as a contextual weightingfactor. The duration that UE 600 has been in RBL mode is one example ofthe above-noted display screen-specific historical data that can befactored into an RBL rule.

In a third RBL rule example, as noted above, custom color temperaturesettings (or blue light adjustments) can be implemented based onapplication-specific information (e.g., for particularapplication-types). When an application of a particular type (e.g.,YouTube, a media gallery application, a web browser, etc.) is open(e.g., activated and contributing image data to some or all of a displayframe, as opposed to being executed as a background process orrepresented in a minimized window), the custom color temperature settingfor that particular application type is implemented (e.g., 20% bluelight reduction for media gallery application, 40% blue light reductionfor YouTube, 80% blue light reduction for web browser, etc.). Examplesof this type of RBL rule are depicted in FIG. 6B with respect toelements 625B through 645B.

In a fourth RBL rule example, a content-type can be evaluated separatelyfrom and/or in conjunction with an application that is displayingparticular content. For example, as shown via elements 610B and 615B, acustom color temperature setting can be set for pictures, irrespectiveof an application (e.g., a web browser, a media gallery application,etc.) displaying the pictures for execution in anapplication-independent manner. In an alternative example, anapplication-specific custom color temperature setting may supplant amore general picture-specific customer color temperature setting forpictures displayed by the relevant application. In another alternativeexample, some blending of the application-specific custom colortemperature setting and the picture-specific customer color temperaturesetting may be implemented (e.g., 20% blue light reduction for picturesgenerally, 40% blue light reduction for a messenger application, somerge the two blue light reductions together to achieve a 30% blue lightreduction for pictures in a chat window of the messenger applicationwhile other parts of the chat window are allocated the 40% blue lightreduction). Again, there are various ways that different rules cancoordinate with each other via a rule hierarchy (e.g., merge overlappingRBL rules, choose one RBL rule over another RBL rule based on priority,etc.).

In more specific RBL rule examples based on content type, UE 600 maydetermine that the image data in a portion of the display frame includesa picture content type or a video content type, whereby a contenttype-based RBL rule may be configured to permit a level of blue lightthat is above (e.g., cooler than) a default blue light level (e.g., viathe default color temperature slider 625 of FIG. 6) defined by the RBLmode in the portion of the display frame based on the determined pictureor video content type. In another example, UE 600 may determine that theimage data in a portion of the display frame includes a textual contenttype, whereby a content type-based RBL rule may be configured torestrict a level of blue light (e.g., make warmer) in a portion of thedisplay frame to a default blue light level (e.g., via the default colortemperature slider 625 of FIG. 6) defined by the RBL mode based on thedetermined textual content type.

In a fifth RBL rule example, a context-dependent content priority levelcan be evaluated. For example, assume that a custom color temperaturesetting for a 40% blue light reduction is set for a picture contenttype. In an example, priority levels can be assigned to particularpictures based on an amount of screen space occupied by the respectivepictures, and these priority levels can be used to weight thepicture-specific 40% blue light reduction level. In a particularexample, a picture shown in full-screen mode (e.g., via a web browser ormedia gallery application) can be allocated the 40% blue light reductionlevel, while a screen depicting 10 thumbnail icons of pictures mayallocate a higher blue light reduction (or warmer) level (e.g., 60%,80%, the default color temperature setting set by the slider 625, etc.)to each thumbnail icon. Hence, the context-dependent content prioritylevel, which may be indicated via screen prominence or occupied screenspace as in the above example, may be factored as an RBL rule (e.g.,which may in turn be used in conjunction with one or more other RBLrules for determining the degree of blue light reduction for particularcontent).

In an example, if UE 600 determines that the image data in a portion ofthe display frame includes high-priority content (e.g., above athreshold priority level), a priority-based RBL rule may be configuredto permit a level of blue light that is above (or cooler than) a defaultblue light level (e.g., via the default color temperature slider 625 ofFIG. 6) defined by the RBL mode in the portion of the display framebased on the determined high-priority. Likewise, in another example, ifUE 600 determines that the image data in a portion of the display frameincludes low-priority content (e.g., less than or equal to the thresholdpriority level used to determine high-priority or some other lowerthreshold), a priority-based RBL rule may be configured to restrict alevel of blue light (or make warmer) in a portion of the display frameto another blue light level (e.g., via the default color temperatureslider 625 of FIG. 6 or some other color temperature setting) defined bythe RBL mode based on the determined low-priority. Low-relative prioritymay be allocated to content that is outside of a region of interest, hasa low prominence or size of the image data within the display frame(e.g., a thumbnail icon), and/or lacks memory colors. Also, as notedabove, there are various ways that different rules can coordinate witheach other via a rule hierarchy (e.g., merge overlapping RBL rules,choose one RBL rule over another RBL rule based on priority, etc.), sothe priority-based RBL rule may simply be one contributing factor thatimpacts the degree of blue light reduction applied to the portion of thedisplay frame.

As noted above, a prominence or size (e.g., full-screen picture/videorelative to a thumbnail icon or other partial-screen view of thepicture/video) of the image data (e.g., a picture, a video, etc.) issimply one example of how priority can be assigned to particular contentwithin the display frame. Another example of priority detection can bebased on whether the content is in a particular region of interest tothe user. For example, assume that UE 600 is operating in split-screenmode where two different applications are displayed (e.g., a web browserand a chat or messenger application). The user is actively engaged inthe messenger application, but has been idle with respect to the webbrowser for 10 minutes. The relative user activity levels in theapplication may define the screen area allocated to the messengerapplication as a region of interest, which may cause content carried inthe region of interest to be allocated with a higher relative prioritylevel (e.g., so pictures embedded within a chat window for the messengerapplication receive a relatively cool 20% blue light reduction, whilepictures embedded in a web page displayed via the web browser receive arelatively warm 70% blue light reduction because the user is unlikely tobe looking at those pictures anyway).

In another example, the presence of memory colors in particular contentcan be used to indicate content priority (e.g., as discussed above withrespect to toggle switch 650B of FIG. 6B). In this case, priority for aparticular picture or video containing any detectable memory colors maybe allocated a high priority, or alternatively the specific region ofthe picture or video where the memory colors are located may beallocated the higher priority (e.g., with the remainder of thepicture/video having a normal or low relative priority level). Memorycolors may be detected via computer vision of the picture or videocontent based on object identification and/or image color analysis, asdescribed above. In an example, a face is recognized as an object in apicture via facial recognition, with the face being defined as a memorycolor object to which high priority is assigned. Other examples ofmemory colors include the sky, foliage, human skin, and any other typeof object that is expected to look unnatural to the user if displayedwith an inaccurate color tone. In one example, if a picture-specificcolor temperature setting calls for 40% blue light reduction inpictures, a picture that includes any memory colors may instead bepermitted to implement only a 20% blue light reduction. In anotherexample, if a picture-specific color temperature setting calls for 40%blue light reduction in pictures, a picture that includes any memorycolors may allocate 20% blue light reduction to screen areas of thepicture in proximity to the detected memory colors, while implementingthe full 40% blue light reduction to screen areas of the picture thatare not in proximity to the detected memory colors. In another example,if a picture-specific color temperature setting calls for 40% blue lightreduction in pictures, a picture that includes any memory colors mayallocate 20% blue light reduction to screen areas of the picture inproximity to the detected memory colors, while implementing anintermediate 30% blue light reduction to screen areas of the picturethat are not in proximity to the detected memory colors (e.g., such thateven sections of the picture that do not contain memory colors aredepicted as somewhat cooler in color temperature to reduce contrast withthe memory color section that has an even cooler color temperature). So,presence of memory colors may impact the priority for the entire pictureor video where the memory colors are detected, or in a more selectivemanner that factors the particular areas that are in proximity to thedetected memory colors.

As will be appreciated, UE 600 may quickly transition between displayframes that include memory colors and display frames that do not includememory colors. This can occur when the user of UE 600 scrolls quicklythrough pictures of a media gallery, or when UE 600 is playing a videothat undergoes frequent scene changes. The quick transition betweendisplay frames with and without memory colors may be a scenario thatinvokes the above-noted RBL rule whereby display screen-specifichistorical data is invoked as a contextual weighting factor. Forexample, assume the user of UE 600 scrolls through 50 pictures that eachinclude memory colors over a period of 10 minutes, such that the user isacclimated to a relatively low level of blue light reduction (e.g., 0%,10%, 20%, etc.). However, the 51^(st) picture does not include anymemory colors. The 10 minute period of high relative blue light mayinvoke a low blue light sensitivity RBL rule as noted above, such thatupon transition to the 51^(st) picture, the blue light level is notimmediately dropped to the higher blue light reduction level (e.g., 20%,40%, 60%, etc.) to be used for pictures without memory colors. In anexample, some intermediate level of blue light reduction may be appliedfirst as a function of the picture RBL rule and the low blue lightsensitivity RBL rule, followed by a gradual lowering of the blue lightlevels until the picture RBL rule is used exclusively and the low bluelight sensitivity RBL rule is phased out.

Of course, the reverse scenario is also possible. For example, assumethe user of UE 600 scrolls through 50 pictures that each do not includeany memory colors over a period of 10 minutes, such that the user isacclimated to a relatively high level of blue light reduction (e.g.,30%, 40%, 50%, etc.). However, the 51^(st) picture includes memorycolors. The 10 minute period of low relative blue light may invoke ahigh blue light sensitivity contextual weighting factor as noted above,such that upon transition to the 51^(st) picture, the blue light levelis not immediately raised to the lower blue light reduction level (e.g.,0%, 10%, 20%, etc.) to be used for pictures with memory colors. In anexample, some intermediate level of blue light reduction may be appliedfirst as a function of the picture RBL rule and the high blue lightsensitivity contextual weighting factor, followed by a gradual raisingof the blue light levels until the image color RBL rule is usedexclusively and the high blue light sensitivity contextual weightingfactor is phased out.

In another example, specific transitions between pictures can beconsidered without factoring exposure or picture repetitions as in theabove-examples. Rather, the relative blue light reduction allocated to afirst picture can be evaluated to limit a degree of blue light reductionchange upon transition to a second picture. Consider the followingexample picture scrolling sequence, where RBL rules specify 20% bluelight reduction for pictures with memory colors, 50% blue lightreduction for pictures without memory colors, and a cap of 10% bluelight reduction differential that restricts how much the blue lightreduction is permitted to be changed between picture transitions:

TABLE 1 Example Blue-Light Reduction Levels During Photo Gallery PictureTransitions Memory Blue Light Colors in Reduction Picture # Picture? %(BLR %) 1 No BLR % [1] = 40% 2 No BLR % [2] = BLR % [1] + 10% = 50% 3 NoBLR % [3] = BLR % [2] = 50% 4 Yes BLR % [4] = BLR % [3] − 10% = 40% 5Yes BLR % [5] = BLR % [4] − 10% = 30% 6 Yes BLR % [6] = BLR % [5] − 10%= 20% 7 Yes BLR % [7] = BLR % [6] = 20% 8 No BLR % [8] = BLR % [7] + 10%= 30% 9 Yes BLR % [9] = BLR % [8] − 10% = 20%

As shown in Table 1, Picture #1 is set to a blue light reduction level(or BLR %[1]) of 40%. When the UE transitions from Picture #1 to Picture#2, the UE determines that Picture #2 does not include any memorycolors, and augments the BLR[1] by 10% to produce BLR %[2]=50%. When theUE transitions from Picture #2 to Picture #3, the UE determines thatPicture #3 does not include any memory colors, but BLR %[2] is alreadyset to the target BLR % for pictures without memory colors, so BLR[3] ismaintained at 50%. When the UE transitions from Picture #3 to Picture#4, the UE determines that Picture #4 includes memory colors, anddecreases BLR[3] by the BLR % change-cap of 10% to produce BLR %[4]=40%.When the UE transitions from Picture #4 to Picture #5, the UE determinesthat Picture #5 includes memory colors, and decreases BLR[4] by the BLR% change-cap of 10% to produce BLR %[5]=30%. When the UE transitionsfrom Picture #5 to Picture #6, the UE determines that Picture #6includes memory colors, and decreases BLR[5] by the BLR % change-cap of10% to produce BLR %[6]=20%. When the UE transitions from Picture #6 toPicture #7, the UE determines that Picture #7 includes memory colors,but BLR %[6] is already set to the target BLR % for pictures with memorycolors, so BLR[7] is maintained at 20%. When the UE transitions fromPicture #7 to Picture #8, the UE determines that Picture #8 does notinclude any memory colors, and augments the BLR[7] by 10% to produce BLR%[8]=30%. When the UE transitions from Picture #8 to Picture #9, the UEdetermines that Picture #9 includes memory colors, and decreases BLR[8]by the BLR % change-cap of 10% to produce BLR %[9]=20%. As will beappreciated, the BLR % change-cap of 10% is an example of a contextualweighting factor that can impact the BLR % calculated by some other RBLrule.

In a sixth RBL rule example, color contrast in the display frame may beevaluated. By applying blue light reductions in the display frame in aselective manner based on execution of various RBL rules as noted above,it is possible that stark color contrasts may occur. For example, if100% blue light reduction is applied in a web page of a browser wherethere are no pictures, while 0% blue light reduction is applied in theweb page where any embedded pictures and/or videos occur, the resultingcolor contrast may appear strange to the user. Hence, a supplemental RBLrule that can be used in conjunction with one or more other RBL rulescan include determining a suggested degree of blue light reduction basedon the at least one other RBL rule, determining that the suggesteddegree of blue light reduction adds one or more negative contrasteffects to the display frame, and lowering the suggested degree of bluelight reduction to reduce or eliminate the one or more negative contrasteffects. In an example, the contrast-based RBL rule may be anoverarching RBL rule that is used as a check, or filter, on anysuggested blue light reductions based on execution of any other RBL ruleor combination of RBL rules. As will be appreciated, the contrast-basedRBL rule described above is another example of a contextual weightingfactor that can impact the amount of RBL reduction calculated by someother RBL rule.

In a seventh RBL rule example, environmental data may be evaluated inaddition to (or separate from) application-type and/or content-specificinformation as described above. For example, as ambient light decreases,the cones in a user's eyes become less effective, which reduces theuser's capacity to perceive color. If an ambient light sensor (e.g.,embedded to the UE an external sensor that is wirelessly connected tothe UE) detects that ambient light is below a threshold (e.g., a dimsetting or even complete darkness), the user may be less impacted byhigher reductions to blue light. Hence, a supplemental RBL rule that canbe used in conjunction with one or more other RBL rules can includeincreasing a degree of blue light reduction in darker environments orlimiting a degree to which blue light can be reduced in brighterenvironments. Other environmental data may also be considered. Forexample, if a user is at a very loud setting (e.g., a concert, a noisyrestaurant, etc.), which may be measured using a microphone, the user isunlikely to be going to sleep soon and may be less concerned with bluelight-induced melatonin suppression. By contrast, if a user is at a veryquiet setting, the user is more likely to be going to sleep soon and maybe more concerned with blue light-induced melatonin suppression. Hence,a supplemental RBL rule that can be used in conjunction with one or moreother RBL rules can include increasing a degree of blue light reductionin quieter environments or limiting a degree to which blue light can bereduced in louder environments. As will be appreciated, theenvironmental RBL rule described above may constitute another example ofa contextual weighting factor that can impact the amount of RBLreduction calculated by some other RBL rule.

While the examples above generally relate to allocating a dynamic amountof RBL reduction to particular content or to a particular application,it will be appreciated that multiple applications may be contributingimage data to the same display frame at the same time, and differentcontent may likewise be displayed in the same display frame at the sametime. In an example, the various RBL rules may be implemented inparallel with respect to these different screen sections. For example,pixels associated with application #1 may be allocated 40% BLR, whilepixels associated application #2 in the same display frame are allocated60% BLR. In another example, pixels associated with memory colors may beallocated 20% BLR, while pixels associated textual data in the samedisplay frame are allocated 50% BLR. Accordingly, application of the RBLrules is not limited to one particular application or one particularpiece of content in the display frame, but can rather be applied inparallel to achieve different levels of blue light reduction indifferent sections of the display frame.

While some embodiments are described above with respect to mobiledevices (e.g., smartphones, tablet computers, etc.), it will beappreciated that other embodiments can be directed to any UE-type,irrespective of whether the UE includes an integrated display device, anexternal display devices, multiple external display devices or anycombination thereof. Likewise, an operating system (OS) that executessome or all of the aforementioned embodiments may correspond to a mobileOS (e.g., Android, iOS, etc.) or a desktop OS (e.g., Windows 10, etc.).

While embodiments are described above specifically with respect to bluelight reduction, it will be appreciated that RBL mode can encompass anyshift in color tones to generally warmer color tones. This may encompassdecreases to light that may be outside of the blue light spectrum, suchas green light. Hence, RBL mode as used herein may include not onlyreductions to blue light, but reductions to other light as well, so longthat the general effect produces a warmer color tone (or temperature)relative to a color temperature used outside of RBL mode (e.g., exceptpossible where the RBL mode identifies one of the exceptions noted abovewhere cooler temperatures are permitted, such as in pictures with memorycolors, videos, and so on).

Those of skill in the art will appreciate that information and signalsmay be represented using any of a variety of different technologies andtechniques. For example, data, instructions, commands, information,signals, bits, symbols, and chips that may be referenced throughout theabove description may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof.

Further, those of skill in the art will appreciate that the variousillustrative logical blocks, modules, circuits, and algorithm stepsdescribed in connection with the embodiments disclosed herein may beimplemented as electronic hardware, computer software, or combinationsof both. To clearly illustrate this interchangeability of hardware andsoftware, various illustrative components, blocks, modules, circuits,and steps have been described above generally in terms of theirfunctionality. Whether such functionality is implemented as hardware orsoftware depends upon the particular application and design constraintsimposed on the overall system. Skilled artisans may implement thedescribed functionality in varying ways for each particular application,but such implementation decisions should not be interpreted as causing adeparture from the scope of the present disclosure.

The various illustrative logical blocks, modules, and circuits describedin connection with the embodiments disclosed herein may be implementedor performed with a general purpose processor, a DSP, an ASIC, a FPGA orother programmable logic device, discrete gate or transistor logic,discrete hardware components, or any combination thereof designed toperform the functions described herein. A general purpose processor maybe a microprocessor, but in the alternative, the processor may be anyconventional processor, controller, microcontroller, or state machine. Aprocessor may also be implemented as a combination of computing devices,e.g., a combination of a DSP and a microprocessor, a plurality ofmicroprocessors, one or more microprocessors in conjunction with a DSPcore, or any other such configuration.

The methods, sequences and/or algorithms described in connection withthe embodiments disclosed herein may be embodied directly in hardware,in a software module executed by a processor, or in a combination of thetwo. A software module may reside in RAM memory, flash memory, ROMmemory, EPROM memory, EEPROM memory, registers, hard disk, a removabledisk, a CD-ROM, or any other form of storage medium known in the art. Anexemplary storage medium is coupled to the processor such that theprocessor can read information from, and write information to, thestorage medium. In the alternative, the storage medium may be integralto the processor. The processor and the storage medium may reside in anASIC. The ASIC may reside in a user terminal (e.g., UE). In thealternative, the processor and the storage medium may reside as discretecomponents in a user terminal.

In one or more exemplary embodiments, the functions described may beimplemented in hardware, software, firmware, or any combination thereof.If implemented in software, the functions may be stored on ortransmitted over as one or more instructions or code on acomputer-readable medium. Computer-readable media includes both computerstorage media and communication media including any medium thatfacilitates transfer of a computer program from one place to another. Astorage media may be any available media that can be accessed by acomputer. By way of example, and not limitation, such computer-readablemedia can comprise RAM, ROM, EEPROM, CD-ROM or other optical diskstorage, magnetic disk storage or other magnetic storage devices, or anyother medium that can be used to carry or store desired program code inthe form of instructions or data structures and that can be accessed bya computer. Also, any connection is properly termed a computer-readablemedium. For example, if the software is transmitted from a website,server, or other remote source using a coaxial cable, fiber optic cable,twisted pair, digital subscriber line (DSL), or wireless technologiessuch as infrared, radio, and microwave, then the coaxial cable, fiberoptic cable, twisted pair, DSL, or wireless technologies such asinfrared, radio, and microwave are included in the definition of medium.Disk and disc, as used herein, includes compact disc (CD), laser disc,optical disc, digital versatile disc (DVD), floppy disk and blu-ray discwhere disks usually reproduce data magnetically, while discs reproducedata optically with lasers. Combinations of the above should also beincluded within the scope of computer-readable media.

While the foregoing disclosure shows illustrative embodiments of thedisclosure, it should be noted that various changes and modificationscould be made herein without departing from the scope of the disclosureas defined by the appended claims. The functions, steps and/or actionsof the method claims in accordance with the embodiments of thedisclosure described herein need not be performed in any particularorder. Furthermore, although elements of the disclosure may be describedor claimed in the singular, the plural is contemplated unless limitationto the singular is explicitly stated.

What is claimed is:
 1. A method of operating a user equipment (UE)coupled to a display screen, comprising: entering into a reduced bluelight (RBL) mode; determining, while operating in accordance with theRBL mode, a degree of blue light reduction in at least a portion of adisplay frame to be output on the display screen using at least one RBLrule from a set of RBL rules, wherein one or more RBL rules of the setof RBL rules are based upon application-specific information of anapplication that is contributing image data to the portion of thedisplay frame, wherein the application-specific information comprisesinformation that identifies the specific application contributing theimage data; wherein the one or more RBL rules of the set of RBL rulesare based upon one or more of the application-specific information andcontent-specific information; wherein the content-specific informationincludes one or more of a type, priority and prominence of content inthe at least a portion of the display frame; wherein thecontent-specific information indicates that the image data in the atleast a portion of the display frame has a priority that is above apriority threshold, wherein the at least one RBL rule permits a level ofblue light that is above a default blue light level defined by the RBLmode in the at least a portion of the display frame based on thepriority determination; selectively reducing the blue light in the atleast a portion of the display frame based on the determining; andsending the display frame with the selectively reduced blue lightportion to the display screen for output.
 2. The method of claim 1,wherein the at least a portion corresponds to an entirety of the displayframe, or wherein the at least a portion corresponds to less than all ofthe display frame.
 3. The method of claim 1, wherein the at least oneRBL rule includes a system-defined rule, a default RBL rule, auser-defined RBL rule or an RBL rule based on environmental data.
 4. Themethod of claim 1, wherein the application-specific information includesinformation regarding the type of content associated with theapplication.
 5. The method of claim 4, wherein the application-specificinformation includes an application type of the application.
 6. Themethod of claim 1, wherein the one or more of the type, priority andprominence of content in the at least a portion of the display frame isbased upon pixel colors used in the image data.
 7. The method of claim6, further comprising: determining that the image data in the at least aportion of the display frame includes a picture content type, a videocontent type or a textual content type based on the pixel colors used inthe image data, wherein the at least one RBL rule permits a level ofblue light in the at least a portion of the display frame based on thedetermined content type.
 8. The method of claim 1, wherein the priorityof the image data being above the threshold is based on the image databeing contained within a region of interest to a user of the UE, a highrelative prominence or size of the image data within the display frame,and/or presence of one or more memory colors within the image data basedupon object identification.
 9. The method of claim 1, wherein the one ormore of the determining and the selectively reducing are based upon theat least one RBL rule in conjunction with one or more contextualweighting factors.
 10. The method of claim 9, wherein at least one ofthe one or more contextual weighting factors is based on historicaldata.
 11. The method of claim 10, wherein the at least one contextualweighting factor is applied by determining, based on the historicaldata, that a user of the UE is expected to be sensitive to thedetermined degree of blue light reduction, adjusting the determineddegree of blue light reduction in response to the user sensitivitydetermination.
 12. The method of claim 11, wherein the user sensitivitydetermination determines that the user of the UE is expected to besensitive to a low or high blue light environment, and wherein thedetermined degree of blue light reduction is adjusted to a higher orlower amount of blue light reduction in response to the user sensitivitydetermination.
 13. The method of claim 11, wherein the selectivelyreducing, over a period of time and a number of display frames,transitions the blue light in the at least a portion from the adjusteddetermined degree of blue light reduction to the determined degree ofblue light reduction.
 14. The method of claim 11, wherein the historicaldata includes user-specific historical data and/or displayscreen-specific historical data.
 15. The method of claim 14, wherein theuser-specific historical data is based upon user feedback from previousentries of the UE into the RBL mode.
 16. The method of claim 14, whereinthe display screen-specific historical data is based on light conditionspreceding the entering.
 17. The method of claim 10, wherein at least oneof the one or more contextual weighting factors is based upon whetherthe determined degree of blue light reduction in the at least a portionof the display frame adds one or more negative contrast effects to thedisplay frame.
 18. The method of claim 17, wherein the selectivelyreducing includes: determining that the determined degree of blue lightreduction in the at least a portion of the display frame adds the one ormore negative contrast effects to the display frame, and lowering thedetermined degree of blue light reduction to reduce or eliminate the oneor more negative contrast effects.
 19. The method of claim 1, whereinthe determining determines the determined degree of blue light reductionusing multiple RBL rules that are factored in accordance with a rulehierarchy.
 20. The method of claim 1, wherein the selectively reducingfurther reduces non-blue light in the at least a portion of the displayframe to supplement the selective reduction to the blue light so as toproduce a warmer color temperature relative to a color temperature indisplay frames prior to the entering.
 21. The method of claim 20,wherein the non-blue light includes green light.
 22. The method of claim1, wherein one or more other portions of the display frame separate fromthe at least a portion of the display frame are allocated a differentdegree of blue light reduction or no blue light reduction.
 23. Themethod of claim 1, wherein the selectively reducing reduces the bluelight with or without impacting an overall brightness output by thedisplay screen.
 24. A user equipment (UE) coupled to a display screen,comprising: at least one processor configured to: enter into a reducedblue light (RBL) mode; determine, while operating in accordance with theRBL mode, a degree of blue light reduction in at least a portion of adisplay frame to be output on the display screen using at least one RBLrule from a set of RBL rules, wherein one or more RBL rules of the setof RBL rules are based upon application-specific information of anapplication that is contributing image data to the portion of thedisplay frame, wherein the application-specific information comprisesinformation that identifies the specific application contributing theimage data; wherein the one or more RBL rules of the set of RBL rulesare based upon one or more of the application-specific information andcontent-specific information; wherein the content-specific informationincludes one or more of a type, priority and prominence of content inthe at least a portion of the display frame; wherein thecontent-specific information indicates that the image data in the atleast a portion of the display frame has a priority that is above apriority threshold, wherein the at least one RBL rule permits a level ofblue light that is above a default blue light level defined by the RBLmode in the at least a portion of the display frame based on thepriority determination; selectively reduce the blue light in the atleast a portion of the display frame based on the determination; andsend the display frame with the selectively reduced blue light portionto the display screen for output.
 25. A user equipment (UE) coupled to adisplay screen, comprising: means for entering into a reduced blue light(RBL) mode; means for determining, while operating in accordance withthe RBL mode, a degree of blue light reduction in at least a portion ofa display frame to be output on the display screen using using at leastone RBL rule from a set of RBL rules, wherein one or more RBL rules ofthe set of RBL rules are based upon application-specific information ofan application that is contributing image data to the portion of thedisplay frame, wherein the application-specific information comprisesinformation that identifies the specific application contributing theimage data; wherein the one or more RBL rules of the set of RBL rulesare based upon one or more of the application-specific information andcontent-specific information; wherein the content-specific informationincludes one or more of a type, priority and prominence of content inthe at least a portion of the display frame; wherein thecontent-specific information indicates that the image data in the atleast a portion of the display frame has a priority that is above apriority threshold, wherein the at least one RBL rule permits a level ofblue light that is above a default blue light level defined by the RBLmode in the at least a portion of the display frame based on thepriority determination; means for selectively reducing the blue light inthe at least a portion of the display frame based on the determination;and means for sending the display frame with the selectively reducedblue light portion to the display screen for output.
 26. Anon-transitory computer-readable medium containing instructions storedthereon which, when executed by a user equipment (UE) coupled to adisplay screen, cause the UE to perform operations, the instructionsincluding: at least one instruction to cause the UE to enter into areduced blue light (RBL) mode; at least one instruction to cause the UEto determine, while operating in accordance with the RBL mode, a degreeof blue light reduction in at least a portion of a display frame to beoutput on the display screen using at least one RBL rule from a set ofRBL rules, wherein one or more RBL rules of the set of RBL rules arebased upon application-specific information of an application that iscontributing image data to the portion of the display frame, wherein theapplication-specific information comprises information that identifiesthe specific application contributing the image data; wherein the one ormore RBL rules of the set of RBL rules are based upon one or more of theapplication-specific information and content-specific information;wherein the content-specific information includes one or more of a type,priority and prominence of content in the at least a portion of thedisplay frame; wherein the content-specific information indicates thatthe image data in the at least a portion of the display frame has apriority that is above a priority threshold, wherein the at least oneRBL rule permits a level of blue light that is above a default bluelight level defined by the RBL mode in the at least a portion of thedisplay frame based on the priority determination; at least oneinstruction to cause the UE to selectively reduce the blue light in theat least a portion of the display frame based on the determination; andat least one instruction to cause the UE to send the display frame withthe selectively reduced blue light portion to the display screen foroutput.